package com.ewzj.bigdata.mvp.contract

import com.ewzj.bigdata.mvp.model.reqbean.ReqCityBean
import com.ewzj.bigdata.mvp.model.reqbean.ReqSearchCityBean
import com.ewzj.bigdata.mvp.model.reqbean.Reqpagebean
import com.ewzj.bigdata.mvp.model.rspbean.BaseData
import com.ewzj.bigdata.mvp.model.rspbean.CityBean
import com.ewzj.bigdata.mvp.model.rspbean.CitySearchBean
import com.ewzj.bigdata.mvp.model.rspbean.RspHomeData
import com.ewzj.bigdata.mvp.ui.adapter.CityAdapter
import com.ewzj.bigdata.mvp.ui.adapter.HomePageAdapter
import com.ewzj.bigdata.mvp.ui.adapter.HotcityAdapter
import com.ewzj.bigdata.mvp.ui.adapter.HourseTypeAdapter
import com.jess.arms.mvp.IModel
import com.jess.arms.mvp.IView
import io.reactivex.Observable

/**
 * author:zhangjing
 * 作用:
 * return:
 */
interface CitySelectorActivityContract {
    interface View : IView{
        fun initHotCityview(adapter: HotcityAdapter)
        fun initCitylistview(adapter: CityAdapter)
        fun initLocationCity(string: String)
    }

    interface Model: IModel {
        fun  loadCityfromNet(reqCityBean: ReqCityBean):Observable<BaseData<CityBean>>
        fun  loadCityfromCache(reqCityBean: ReqCityBean):Observable<CityBean>
        fun  searchCity(reqSearchCityBean: ReqSearchCityBean):Observable<BaseData<CitySearchBean>>
    }
}